/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.ufsc.aps.jogodavida.model;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/**
 *
 * @author Daniel
 */
public class Conjunto implements Serializable {
    
    private TipoConjunto tipo;
    private char naipe;
    private List<Carta> cartasDoConjunto;
    private int pontuacao;

    public Conjunto(TipoConjunto tipo,char naipe) {
        this.tipo = tipo;
        this.naipe = naipe;
        cartasDoConjunto = new ArrayList<Carta>();
    }
    
    public Integer getPontuacaoTotal(){
        int pontos = 0;
        for (Carta carta : cartasDoConjunto){
            pontos += carta.getPontuacao();
        }
        return pontos;
    }
    
    public void adicionarCarta(Carta cartaNova){
        cartasDoConjunto.add(cartaNova);
    }
      
    public TipoConjunto getTipo() {
        return tipo;
    }

    public void setTipo(TipoConjunto tipo) {
        this.tipo = tipo;
    }

    public char getNaipe() {
        return naipe;
    }

    public void setNaipe(char naipe) {
        this.naipe = naipe;
    }
    
    public List<Carta> getCartasDoConjunto() {
        return cartasDoConjunto;
    }

    public void setCartasDoConjunto(List<Carta> cartasDoConjunto) {
        this.cartasDoConjunto = cartasDoConjunto;
    }

    public int getPontuacao() {
        return pontuacao;
    }

    public void setPontuacao(int pontuacao) {
        this.pontuacao = pontuacao;
    }
    
    @Override
    public String toString() {
        return " tipoconjunto= " + tipo + "\nnaipe= " + naipe;
    }
    
    @Override
    public boolean equals(Object obj) {
        if(obj instanceof Conjunto){
            Conjunto outro = (Conjunto) obj;
            return this.toString().equals(outro.toString());
        }
        return false;
    }
 
    
}
